'\" te
.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
.TH POOL_COMPONENT_INFO 3POOL "January 15, 2020"
.SH NAME
pool_component_info, pool_get_owning_resource \- resource pool component
functions
.SH SYNOPSIS
.nf
cc [ \fIflag\fR\&.\|.\|. ] \fIfile\fR\&.\|.\|. \fB-lpool\fR [ \fIlibrary\fR\&.\|.\|. ]
#include <pool.h>

\fBconst char *\fR\fBpool_component_info\fR(\fBpool_conf_t *\fR\fIconf\fR,
     \fBpool_component_t *\fR\fIcomponent\fR, \fBint\fR \fIflags\fR);
.fi

.LP
.nf
\fBpool_resource_t *\fR\fBpool_get_owning_resource\fR(\fBpool_conf_t *\fR\fIconf\fR,
     \fBpool_component_t *\fR\fIcomponent\fR);
.fi

.SH DESCRIPTION
Certain resources, such as processor sets, are composed of resource components.
Informational and ownership attributes of resource components are made
available with the \fBpool_component_info()\fR and
\fBpool_get_owning_resource()\fR functions. The \fIconf\fR argument for each
function refers to the target configuration to which the operation applies.
.sp
.LP
The \fBpool_component_info()\fR function returns a string describing
\fIcomponent\fR. The string is allocated with \fBmalloc\fR(3C). The caller is
responsible for freeing the returned string. The \fIflags\fR argument is
ignored.
.sp
.LP
The \fBpool_get_owning_resource()\fR function returns the resource currently
containing \fIcomponent\fR.  Every component is contained by a resource.
.SH RETURN VALUES
Upon successful completion, \fBpool_component_info()\fR returns a string.
Otherwise it returns \fINULL\fR and \fBpool_error\fR(3POOL) returns the
pool-specific error value.
.sp
.LP
Upon successful completion, \fBpool_get_owning_resource()\fR returns the owning
resource. Otherwise it returns \fINULL\fR and \fBpool_error()\fR returns the
pool-specific error value.
.SH ERRORS
The \fBpool_component_info()\fR function will fail if:
.sp
.ne 2
.na
\fB\fBPOE_BADPARAM\fR\fR
.ad
.RS 20n
The supplied configuration's status is not \fBPOF_VALID\fR or the \fIflags\fR
parameter is neither 0 or 1.
.RE

.sp
.ne 2
.na
\fB\fBPOE_INVALID_CONF\fR\fR
.ad
.RS 20n
The configuration is invalid.
.RE

.sp
.ne 2
.na
\fB\fBPOE_SYSTEM\fR\fR
.ad
.RS 20n
A system error has occurred. Check the system error code for more details.
.RE

.sp
.LP
The \fBpool_get_owning_resource()\fR function will fail if:
.sp
.ne 2
.na
\fB\fBPOE_BADPARAM\fR\fR
.ad
.RS 16n
The supplied configuration's status is not \fBPOF_VALID\fR.
.RE

.SH ATTRIBUTES
See \fBattributes\fR(7) for descriptions of the following attributes:
.sp

.sp
.TS
box;
c | c
l | l .
ATTRIBUTE TYPE	ATTRIBUTE VALUE
_
CSI	Enabled
_
Interface Stability	Unstable
_
MT-Level	Safe
.TE

.SH SEE ALSO
.BR libpool (3LIB),
.BR pool_error (3POOL),
.BR attributes (7)
